Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Key-agreement protocol</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Key-agreement_protocol"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Key-agreement_protocol rootpage-Key-agreement_protocol skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Key-agreement protocol</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<style data-mw-deduplicate="TemplateStyles:r1251242444">
/* start https://en.wikipedia.org/ */


.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}@media print{body.ns-0 .mw-parser-output .ambox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style>
<p>In cryptography, a <b>key-agreement protocol</b> is a protocol whereby two (or more) parties generate a cryptographic <a href="Key_(cryptography)" title="Key (cryptography)">key</a> as a function of information provided by each honest party so that no party can predetermine the resulting value.<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup>
In particular, all honest participants influence the outcome. A key-agreement protocol is a specialisation of a key-exchange protocol.<sup id="cite_ref-Canetti2001_2-0" class="reference"><a href="#cite_note-Canetti2001-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>
</p><p>At the completion of the protocol, all parties share the same key. A key-agreement protocol precludes undesired third parties from forcing a key choice on the agreeing parties. A secure key agreement can ensure <a href="Confidentiality" title="Confidentiality">confidentiality</a> and <a href="Data_integrity" title="Data integrity">data integrity</a><sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> in communications systems, ranging from simple messaging applications to complex banking transactions.
</p><p>Secure agreement is defined relative to a security model, for example the Universal Model.<sup id="cite_ref-Canetti2001_2-1" class="reference"><a href="#cite_note-Canetti2001-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> More generally, when evaluating protocols, it is important to state security goals and the security model.<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> For example, it may be required for the session key to be <a href="Authenticated_Key_Exchange" title="Authenticated Key Exchange">authenticated</a>. A protocol can be evaluated for success only in the context of its goals and attack model.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup> An example of an adversarial model is the <a href="Dolev%E2%80%93Yao_model" title="Dolev–Yao model">Dolev–Yao model</a>.
</p><p>In many key exchange systems, one party generates the key, and sends that key to the other party;<sup id="cite_ref-:0_6-0" class="reference"><a href="#cite_note-:0-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup> the other party has no influence on the key.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Exponential_key_exchange">Exponential key exchange</h2></div>
<p>The first publicly known<sup id="cite_ref-:0_6-1" class="reference"><a href="#cite_note-:0-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup> public-key agreement protocol that meets the above criteria was the <a href="Diffie%E2%80%93Hellman_key_exchange" title="Diffie–Hellman key exchange">Diffie–Hellman key exchange</a>, in which two parties jointly <a href="Exponentiation" title="Exponentiation">exponentiate</a> a generator with random numbers, in such a way that an eavesdropper cannot feasibly determine what the resultant shared key is.
</p><p>Exponential key agreement in and of itself does not specify any prior agreement or subsequent authentication between the participants. It has thus been described as an anonymous key agreement protocol.
</p>
<div class="mw-heading mw-heading2"><h2 id="Symmetric_key_agreement">Symmetric key agreement</h2></div>
<p>Symmetric key agreement (SKA) is a method of key agreement that uses solely <a href="Symmetric-key_algorithm" title="Symmetric-key algorithm">symmetric cryptography</a> and <a href="Cryptographic_hash_function" title="Cryptographic hash function">cryptographic hash functions</a> as <a href="Cryptographic_primitive" title="Cryptographic primitive">cryptographic primitives</a>. It is related to symmetric authenticated key exchange.<sup id="cite_ref-Boyd2021_7-0" class="reference"><a href="#cite_note-Boyd2021-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup>
</p><p>SKA may assume the use of initial <a href="Shared_secret" title="Shared secret">shared secrets</a><sup id="cite_ref-Boyd2021_7-1" class="reference"><a href="#cite_note-Boyd2021-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup> or a <a href="Trusted_third_party" title="Trusted third party">trusted third party</a> with whom the agreeing parties share a secret is assumed.<sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup> If no third party is present, then achieving SKA can be trivial: we tautologically assume that two parties that share an initial secret and have achieved SKA.
</p><p>SKA contrasts with key-agreement protocols that include techniques from <a href="Public-key_cryptography" title="Public-key cryptography">asymmetric cryptography</a>, such as <a href="Key_encapsulation_mechanism" title="Key encapsulation mechanism">key encapsulation mechanisms</a>.
</p><p>The initial exchange of a shared key must be done in a manner that is private and integrity-assured. Historically, this was achieved by physical means, such as by using a trusted <a href="Courier" title="Courier">courier</a>.
</p><p>An example of a SKA protocol is the <a href="Needham%E2%80%93Schroeder_protocol" title="Needham–Schroeder protocol">Needham–Schroeder protocol</a>. It establishes a <a href="Session_key" title="Session key">session key</a> between two parties on the same <a href="Computer_network" title="Computer network">network</a>, using a <a href="Server_(computing)" title="Server (computing)">server</a> as a trusted third party.
The original Needham–Schroeder protocol is vulnerable to a replay attack. <a href="Timestamp" title="Timestamp">Timestamps</a> and <a href="Cryptographic_nonce" title="Cryptographic nonce">nonces</a> are included to fix this attack. It forms the basis for the <a href="Kerberos_(protocol)" title="Kerberos (protocol)">Kerberos protocol</a>.
</p>
<div class="mw-heading mw-heading3"><h3 id="Types_of_key_agreement">Types of key agreement</h3></div>
<p>Boyd et al.<sup id="cite_ref-Boyd2020_9-0" class="reference"><a href="#cite_note-Boyd2020-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup> classify two-party key agreement protocols according to two criteria as follows:
</p>
<ol><li>whether a pre-shared key already exists or not</li>
<li>the method of generating the <a href="Session_key" title="Session key">session key</a>.</li></ol>
<p>The pre-shared key may be shared between the two parties, or each party may share a key with a trusted third party. If there is no secure channel (as may be established via a pre-shared key), it is impossible to create an authenticated session key.<sup id="cite_ref-10" class="reference"><a href="#cite_note-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup>
</p><p>The session key may be generated via: key transport, key agreement and hybrid. If there is no trusted third party, then the cases of key transport and hybrid session key generation are indistinguishable. SKA is concerned with protocols in which the session key is established using only symmetric primitives.
</p>
<div class="mw-heading mw-heading2"><h2 id="Authentication">Authentication</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1236090951">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Authenticated_key_agreement" class="mw-redirect" title="Authenticated key agreement">Authenticated key agreement</a></div>
<p>Anonymous key exchange, like Diffie–Hellman, does not provide <a href="Authentication" title="Authentication">authentication</a> of the parties, and is thus vulnerable to <a href="Man-in-the-middle_attack" title="Man-in-the-middle attack">man-in-the-middle attacks</a>.
</p><p>A wide variety of cryptographic authentication schemes and protocols have been developed to provide authenticated key agreement to prevent man-in-the-middle and related attacks. These methods generally mathematically bind the agreed key to other agreed-upon data, such as the following:
</p>
<ul><li>public–private key pairs</li>
<li>shared secret keys</li>
<li>passwords</li></ul>
<div class="mw-heading mw-heading3"><h3 id="Public_keys">Public keys</h3></div>
<p>A widely used mechanism for defeating such attacks is the use of <a href="Digital_signature" title="Digital signature">digitally signed</a> keys that must be integrity-assured: if Bob's key is signed by a <a href="Trusted_third_party" title="Trusted third party">trusted third party</a> vouching for his identity, Alice can have considerable confidence that a signed key she receives is not an attempt to intercept by Eve. When <a href="Alice_and_Bob" title="Alice and Bob">Alice and Bob</a> have a public-key infrastructure, they may digitally sign an agreed Diffie–Hellman key, or exchanged Diffie–Hellman public keys. Such signed keys, sometimes signed by a <a href="Certificate_authority" title="Certificate authority">certificate authority</a>, are one of the primary mechanisms used for secure <a href="Web_traffic" title="Web traffic">web traffic</a> (including <a href="HTTPS" title="HTTPS">HTTPS</a>, <a href="Secure_Sockets_Layer" class="mw-redirect" title="Secure Sockets Layer">SSL</a> or <a href="Transport_Layer_Security" title="Transport Layer Security">TLS</a> protocols). Other specific examples are <a href="MQV" title="MQV">MQV</a>, <a href="YAK_(cryptography)" title="YAK (cryptography)">YAK</a> and the <a href="Internet_Security_Association_and_Key_Management_Protocol" title="Internet Security Association and Key Management Protocol">ISAKMP</a> component of the IPsec protocol suite for securing Internet Protocol communications. However, these systems require care in endorsing the match between identity information and public keys by certificate authorities in order to work properly.
</p>
<div class="mw-heading mw-heading3"><h3 id="Hybrid_systems">Hybrid systems</h3></div>
<p>Hybrid systems use public-key cryptography to exchange secret keys, which are then used in a symmetric-key cryptography systems. Most practical applications of cryptography use a combination of cryptographic functions to implement an overall system that provides all of the four desirable features of secure communications (confidentiality, integrity, authentication, and non-repudiation).
</p>
<div class="mw-heading mw-heading3"><h3 id="Passwords">Passwords</h3></div>
<p><a href="Password-authenticated_key_agreement" title="Password-authenticated key agreement">Password-authenticated key agreement</a> protocols require the separate establishment of a <a href="Password" title="Password">password</a> (which may be smaller than a key) in a manner that is both private and integrity-assured. These are designed to resist man-in-the-middle and other active attacks on the password and the established keys. For example, DH-<a href="Encrypted_key_exchange" title="Encrypted key exchange">EKE</a>, <a href="SPEKE_(cryptography)" class="mw-redirect" title="SPEKE (cryptography)">SPEKE</a>, and <a href="Secure_remote_password_protocol" class="mw-redirect" title="Secure remote password protocol">SRP</a> are password-authenticated variations of Diffie–Hellman.
</p>
<div class="mw-heading mw-heading3"><h3 id="Other_tricks">Other tricks</h3></div>
<p>If one has an integrity-assured way to verify a shared key over a public channel, one may engage in a <a href="Diffie%E2%80%93Hellman_key_exchange" title="Diffie–Hellman key exchange">Diffie–Hellman key exchange</a> to derive a short-term shared key, and then subsequently authenticate that the keys match. One way is to use a voice-authenticated read-out of the key, as in <a href="PGPfone" title="PGPfone">PGPfone</a>. Voice authentication, however, presumes that it is infeasible for a man-in-the-middle to spoof one participant's voice to the other in real-time, which may be an undesirable assumption. Such protocols may be designed to work with even a small public value, such as a password. Variations on this theme have been proposed for <a href="Bluetooth" title="Bluetooth">Bluetooth</a> pairing protocols.
</p><p>In an attempt to avoid using any additional out-of-band authentication factors, Davies and Price proposed the use of the <a href="Interlock_protocol" title="Interlock protocol">interlock protocol</a> of <a href="Ron_Rivest" title="Ron Rivest">Ron Rivest</a> and <a href="Adi_Shamir" title="Adi Shamir">Adi Shamir</a>, which has been subject to both attack and subsequent refinement.
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Key_(cryptography)" title="Key (cryptography)">Key (cryptography)</a></li>
<li><a href="Computer_security" title="Computer security">Computer security</a></li>
<li><a href="Cryptanalysis" title="Cryptanalysis">Cryptanalysis</a></li>
<li><a href="Secure_channel" title="Secure channel">Secure channel</a></li>
<li><a href="Digital_signature" title="Digital signature">Digital signature</a></li>
<li><a href="Key_encapsulation_mechanism" title="Key encapsulation mechanism">Key encapsulation mechanism</a></li>
<li><a href="Key_management" title="Key management">Key management</a></li>
<li><a href="Password-authenticated_key_agreement" title="Password-authenticated key agreement">Password-authenticated key agreement</a></li>
<li><a href="Interlock_protocol" title="Interlock protocol">Interlock protocol</a></li>
<li><a href="Zero-knowledge_password_proof" title="Zero-knowledge password proof">Zero-knowledge password proof</a></li>
<li><a href="Neural_cryptography#Neural_key_exchange_protocol" title="Neural cryptography">Neural cryptography §&nbsp;Neural key exchange protocol</a></li>
<li><a href="Quantum_key_distribution" title="Quantum key distribution">Quantum key distribution</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */


.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}


/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap"><ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */


.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}


/* end https://en.wikipedia.org/ */
</style><cite id="CITEREFMenezesOorschotVanstone1997" class="citation book cs1">Menezes, A.; Oorschot, P. van; Vanstone, S. (1997). <span class="id-lock-registration" title="Free registration required"><a rel="nofollow" class="external text" href="https://archive.org/details/handbookofapplie0000mene"><i>Handbook of Applied Cryptography</i></a></span> (5th&nbsp;ed.). CRC Press. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>0-8493-8523-7</bdi>.</cite></span>
</li>
<li id="cite_note-Canetti2001-2"><span class="mw-cite-backlink">^ <a href="#cite_ref-Canetti2001_2-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-Canetti2001_2-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite id="CITEREFCanettiKrawczyk2001" class="citation book cs1">Canetti, Ran; Krawczyk, Hugo (6 May 2001). <a rel="nofollow" class="external text" href="https://dl.acm.org/doi/abs/10.5555/647086.715688">"Analysis of Key-Exchange Protocols and Their Use for Building Secure Channels"</a>. <i>EUROCRYPT '01: Proceedings of the International Conference on the Theory and Application of Cryptographic Techniques: Advances in Cryptology</i>. Springer-Verlag. pp.&nbsp;<span class="nowrap">453–</span>474. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>978-3-540-42070-5</bdi>.</cite></span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-3">^</a></b></span> <span class="reference-text"><cite id="CITEREFBellareCanettiKrawczyk1998" class="citation book cs1">Bellare, Mihir; Canetti, Ran; Krawczyk, Hugo (23 May 1998). <a rel="nofollow" class="external text" href="https://doi.org/10.1145/276698.276854">"A modular approach to the design and analysis of authentication and key exchange protocols (Extended abstract)"</a>. <i>Proceedings of the thirtieth annual ACM symposium on Theory of computing - STOC '98</i>. Association for Computing Machinery. pp.&nbsp;<span class="nowrap">419–</span>428. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1145%2F276698.276854">10.1145/276698.276854</a>. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>0-89791-962-9</bdi>.</cite></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><cite id="CITEREFGollmann1996" class="citation book cs1">Gollmann, D. (6 May 1996). <a rel="nofollow" class="external text" href="https://dl.acm.org/doi/10.5555/525080.884256">"What do we mean by entity authentication?"</a>. <i>Proceedings 1996 IEEE Symposium on Security and Privacy</i>. IEEE Computer Society. pp.&nbsp;<span class="nowrap">46–</span>54. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1109%2FSECPRI.1996.502668">10.1109/SECPRI.1996.502668</a>. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>978-0-8186-7417-4</bdi>.</cite></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><cite id="CITEREFKatzLindell2021" class="citation book cs1">Katz, Jonathan; Lindell, Yehuda (2021). <i>Introduction to modern cryptography</i> (Third&nbsp;ed.). Boca Raton London New York: CRC Press Taylor &amp; Francis Group. p.&nbsp;49. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>978-0815354369</bdi>.</cite></span>
</li>
<li id="cite_note-:0-6"><span class="mw-cite-backlink">^ <a href="#cite_ref-:0_6-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:0_6-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text">See <a href="Diffie%E2%80%93Hellman_key_exchange" title="Diffie–Hellman key exchange">Diffie–Hellman key exchange</a> for a more complete history of both the secret and public development of public-key cryptography.</span>
</li>
<li id="cite_note-Boyd2021-7"><span class="mw-cite-backlink">^ <a href="#cite_ref-Boyd2021_7-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-Boyd2021_7-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite id="CITEREFBoydDaviesde_KockGellert2021" class="citation book cs1">Boyd, Colin; Davies, Gareth T.; de Kock, Bor; Gellert, Kai; Jager, Tibor; Millerjord, Lise (2021). "Symmetric Key Exchange with Full Forward Security and Robust Synchronization". <a rel="nofollow" class="external text" href="https://hdl.handle.net/handle/11250/2989781"><i>Advances in Cryptology – ASIACRYPT 2021</i></a>. Lecture Notes in Computer Science. Vol.&nbsp;13093. Springer International Publishing. pp.&nbsp;<span class="nowrap">681–</span>710. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1007%2F978-3-030-92068-5_23">10.1007/978-3-030-92068-5_23</a>. <a href="Hdl_(identifier)" class="mw-redirect" title="Hdl (identifier)">hdl</a>:<a rel="nofollow" class="external text" href="https://hdl.handle.net/11250%2F2989781">11250/2989781</a>. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>978-3-030-92067-8</bdi>.</cite></span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><cite id="CITEREFPagniaGaertner1999" class="citation journal cs1">Pagnia, Henning; Gaertner, Felix (1999). <a rel="nofollow" class="external text" href="https://citeseerx.ist.psu.edu/document?repid=rep1&amp;type=pdf&amp;doi=208b22c7a094ada20736593afcc8c759c7d1b79c">"On the impossibility of fair exchange without a trusted third party"</a>. <i>Echnical Report TUD-BS-1999-02</i>: <span class="nowrap">1–</span>15.</cite></span>
</li>
<li id="cite_note-Boyd2020-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-Boyd2020_9-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFBoydMathuriaStebila2020" class="citation book cs1">Boyd, Colin; Mathuria, Anish; Stebila, Douglas (2020). <a rel="nofollow" class="external text" href="https://link.springer.com/book/10.1007/978-3-662-58146-9"><i>Protocols for Authentication and Key Establishment</i></a>. Information Security and Cryptography. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1007%2F978-3-662-58146-9">10.1007/978-3-662-58146-9</a>. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>978-3-662-58145-2</bdi>.</cite></span>
</li>
<li id="cite_note-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-10">^</a></b></span> <span class="reference-text"><cite id="CITEREFBoyd1993" class="citation journal cs1">Boyd, C. (June 1993). <a rel="nofollow" class="external text" href="https://gnusha.org/~nmz787/pdf/Security%20Architectures%20Using%20Formal%20Methods.pdf">"Security architectures using formal methods"</a> <span class="cs1-format">(PDF)</span>. <i>IEEE Journal on Selected Areas in Communications</i>. <b>11</b> (5): <span class="nowrap">694–</span>701. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1109%2F49.223872">10.1109/49.223872</a>.</cite></span>
</li>
</ol></div></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-06-18" href="https://en.wikipedia.org/wiki/?title=Key-agreement_protocol&amp;oldid=1296220383">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>